extends Node
class_name 角色属性

@export var 最大生命值: int = 10
var 当前生命值: int = 0

@export var 最大行动点数: int = 2
var 当前行动点数: int = 0

@export var 移动速度: float = 200

signal 信号_生命值改变(hp:int)
signal 信号_行动点数改变(val:int)

func _ready() -> void:
	修改生命值(最大生命值)
	恢复行动点数()	
	
func 降低生命值(val):
	修改生命值(当前生命值 - val)
	
		
func 修改生命值(val):
	当前生命值 = max(0, val)	
	当前生命值 = min(val, 最大生命值)
	信号_生命值改变.emit(当前生命值)
	
func 修改行动点数(val):
	当前行动点数 = val	
	信号_行动点数改变.emit(当前行动点数)

func 恢复行动点数():
	当前行动点数 = 最大行动点数	
	信号_行动点数改变.emit(当前行动点数)
	
	
